Skip to main content

Helpers — Utilidades de consola

Ubicación: NeoGenesis/Shared/Helpers.cs

Clase de utilidades compartida por todos los módulos. Concentra el renderizado de tablas, mensajes de color y validaciones de input.


Métodos de visualización

ShowDinosaurs(List<Dinosaur> dinosaurs)

Renderiza una tabla tabulada en consola con los campos principales de cada dinosaurio.

Columnas:

ColumnaAnchoCampo fuente
Id5 charsd.Id
Username15 charsd.Username
Species20 charsd.DinoSpecies
Age6 charsd.Age o "N/A"
Type12 charsd.Type o "N/A"
Zone10 charsd.Zone o "N/A"
Sector10 charsd.Sector o "N/A"
Tracknumber15 charsd.TrackNumber o "N/A"
Address12 charsd.Address o "N/A"
CreatedAt10 charsd.CreatedAt

ShowDinosaursforReports(List<string> dinosaurs)

Renderiza la tabla simplificada para reportes (opción 8 del menú).

Name                Code
----------------------------------------
Rex REX-001
----------------------------------------
Total: 1

CountDinosaurs(List<Dinosaur> dinosaurs)

Imprime el total de elementos en la lista.

Total: 42

Métodos de mensajería

PrintSuccess(string message) — estático

Imprime el mensaje en verde con ícono ✔.

✔ Dino registered successfully. ID asignado: 5

PrintError(string message) — estático

Imprime el mensaje en rojo con ícono ✖.

✖ El identificador 'rex01' ya está registrado en el sistema.

PrintInfo(string message) — estático

Imprime el mensaje en cyan, con dos espacios de sangría.

  Edad se mantiene sin cambios.

Métodos de validación e interacción

IntValidation(string value)

public int? IntValidation(string value)

Intenta parsear value como entero. Retorna el número si es válido, o null si no.

EntradaRetorno
"25"25
"abc"null
""null

InputErrorHandler(dynamic value)

Si value es null, imprime "Invalid input" en consola.

Hold()

Pausa la ejecución hasta que el usuario presione una tecla. Imprime "Press any key to continue..." y luego limpia la pantalla.